package com.ta.mapper;

import com.ta.pojo.Order;
import com.ta.pojo.OrderItem;
import com.ta.pojo.vo.OrderVO;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

@Repository
public interface OrderMapper {
    /**
     * 创建订单
     * @param order
     * @return
     */
    Integer insertOrder(Order order);

    /**
     * 创建订单项
     * @param orderItem
     * @return
     */
    Integer insertOrderItem(OrderItem orderItem);

    /**
     * 修改订单状态
     * @param oid
     * @return
     */
    Integer modifyStatus(Integer oid,
                         Integer status,
                         String modifiedUser,
                         Date modifiedTime,
                         Date payTime);

    /**
     * 查询15分钟后未支付订单
     * @return
     */
    List<Order> selectStatus();

    /**
     * 查询订单是否存在
     * @param oid
     * @return
     */
    Order selectOid(Integer oid);


    /**
     * 全部订单信息
     * @return
     */
    List<OrderVO> selectOrderList(Integer uid);

    /**
     * 未收货的订单信息
     * @return
     */
    List<OrderVO> selectNoConfirm();

    /**
     * 未付款订单信息
     * @return
     */
    List<OrderVO> selectNoPayment();

    /**
     * 订单详情信息
     * @param oid
     * @return
     */
    OrderVO selectOrderInfo(Integer oid);

}
